在线接受短信验证码进行识别

在线接受短信验证码进行识别

点点

2021-04-11 10:25 阅读 527 喜欢 0

这个问题应该有很多人碰到吧?配合手机和app将短信提交到服务器,然后开放出来供各位网友们使用,那么肯定是收费的,也可能会有无私的网友免费共享出来。

前段时间,抓数据的时候就用到了短信验证码,找到一个 免费站点。

https://www.pdflibr.com

网站上大约一百多个短信接收号码,如果你还需要大量的,那么这里不适合你了,建议找个收费的测试下。

下边是使用,都是代码,简单记录,仅供参考。

抓取短信号码和地址

依赖 async axios cheerio sqlquery-tool //自动抓取网站上的可用手机号码并进行存储 更新 let startPage = 1; let url = https://www.pdflibr.com/?page= let host = https://www.pdflibr.com; let axios = require('axios'); let cheerio = require('cheerio'); let async = require('async');

let query = require('sqlquery-tool'); let log = require('../util/log');

//抓取单页手机号码 function fetch(url){ return axios.get(url) .then(rs=>{ let html = rs.data; let $ = cheerio.load(html); //查找是否存在手机列表信息 let $sms = $('.sms_content'); if($sms.find('.sms-number-list.row.show-grid').length == 0){//没有数据 return null; }else{ //找到符合条件的手机号码和地址信息 let phoneList = []; let $list = $sms.find('.sms-number-list.row.show-grid'); $list.each((i,item)=>{ const isChina = $(item).find('picture img').attr('src').indexOf('china') > -1; const phoneNo = $(item).find('.number-list-phone_number h3').text().replace('+86',''); const isUse = $(item).find('.number-list-info').html().trim() == '' || $(item).find('.number-list-info p:nth-child(2)').text().indexOf('小时') > -1 ? false : true; const phoneUrl = host + $(item).find('.sms-number-read a').attr('href'); if(isChina && isUse){ phoneList.push({ phoneNo : phoneNo, phoneUrl : phoneUrl }); } }) return phoneList; } }) }

async function start(){ //执行获取,从第一个开始,一直增加 try{ let startGo = true; let allArr = []; while(startGo){ let phoneList = await fetch(url+startPage); console.log(phoneList); if(phoneList == null){ startGo = false; }else{ //添加 startPage ++ ; allArr = allArr.concat(phoneList); } } //直到所有的页面全部抓完 //开始进行更新/或插入/等等 for(let info of allArr){ let hasList = await query.search('phonelist').where({phoneNo : info.phoneNo}).list(); if(hasList == null || hasList.length == 0){ let rs = await query.search('phonelist').insert(info); } } }catch(e){ console.log(e); log('手机号码',抓取失败:${e||'无'}) } }

module.exports = start; 根据手机号查找验证码

依赖 sqlquery-tool axios cheerio //获取短信验证码 let query = require('sqlquery-tool'); let axios = require('axios'); let cheerio = require('cheerio'); let log = require('../util/log');

module.exports = function(phone,datetime){ return query.search('phonelist').where({ phoneNo : phone }).list() .then(rs=>{ let pageUrl = rs[0].phoneUrl; return axios.get(pageUrl); }) .then(rs=>{ let html = rs.data; let $ = cheerio.load(html); let txtArr = []; $('.sms_content:nth-child(4) table tr').each(function(i,item){ var itemText = $(item).find('td:nth-child(3)').text(); var timestr = $(item).find('td:nth-child(4)').text();

        let d = new Date(timestr.trim());
        let time = d.getTime();
        if(datetime <  time){
            txtArr.push({
                txt : itemText,
                time : d.getTime()
            });
        }
    })
    //查找是否存在
    var phoneCode = '',getRs = false;
    for(let i=0;i<txtArr.length;i++){
        let txt = txtArr[i].txt;
        let time = txtArr[i].time;
        if(txt != '' && txt.indexOf('关键词A') > -1 && txt.indexOf('关键词B') > -1 ){
            phoneCode = txt.trim().substring(txt.trim().length - 6);
            getRs = true;
            log('短信验证码',`获得短信验证码:${phoneCode}`)
            break;
        }
    }
    return {
        success : getRs,
        result : phoneCode
    }
})

} 最近的文章确实凑活 ,一直再忙,有空在细细研究。望网友们见谅。

转载请注明出处: http://sdxlp.cn/article/在线短信 短信验证.html


如果对你有用的话,请赏给作者一个馒头吧 ...或帮点下页面底部的广告,感谢!!

赞赏支持
提交评论
评论信息(请文明评论)
暂无评论,快来快来写想法...
推荐
电脑版微信怎么发朋友圈,最近有很多小伙伴都在问关于微信电脑版的一些问题,小编下面给小伙伴们带来微信pc端发朋友圈教程分享,感兴趣的小伙伴们不要错过了哦,希望这篇文章能对小伙伴们有所帮助。
有两个模块可以实现二维码的模块,一个是node-qrcode ,这个算是比较大众的,还有一个是小众的 qr-image ,这个比较简单,没有其他环境依赖,安装即可用,因为要实现一个简单的在线二维码生成,就先用这个试试啦。
电脑的IP地址是我们在使用时都需要用到的,在连接网络或者是局域网时都可以使用到,所以很多小伙伴在装电脑的时候就需要此IP地址,但是很多小伙伴不知道win10ip地址查询电脑怎么查询?
iPhone12如何关机?当我们在购买了iPhone12系列手机之后,想要将手机关机,发现用长按关机键无法关机,这是为什么呢,为什么iPhone12长按关机键无法关机,iPhone12如何关机,下面就和点点一起来看看吧!
手机已经成为我们必备的生活工具,如果遇到需要将几张图片拼合在一起的情况时,用手机应该使用什么应用可以达到效果呢,怎么把几张图片拼合成一张照片呢,具体该怎么操作,下面就和小编一起来看看吧!
小红书是现在非常流行的一款生活、社交软件,有些小伙伴不知道如何将小红书中的笔记设为置顶,接下来小编就给小伙伴们介绍一下具体的操作步骤。
在日常生活中,每个人都有自己的风格,例如电脑微信图标,很多小伙伴们喜欢把任务栏的图标隐藏起来,变得更加简约。一定会有多数小伙伴还不知道如何去隐藏微信图标吧,和如何修改微信电脑版的标签与权限呢?
当我们在群聊中需要发布一些重要的内容时,可以直接@所有人来通知每个群聊的用户,也可以选择@all来提醒所有人,那@all和@所有人是一样的吗,怎么操作呢,下面就和点点一起来看看吧!